This invention relates to multi-table mapping for Huffman code decoding.
Data compression techniques are used in many communication systems to increase the number of codes transferred within an available bandwidth, which defines the upper transfer rate of data. Huffman coding is one such compression technique used to compress and transmit, for example, video, audio/speech, and data. Each Huffman code is defined by binary digits or bits and represents a symbol such as an alphabet, a number, or other predefined information. Huffman coding is based on a variable-length statistical encoding scheme where each code""s length depends on the probability of occurrence of the corresponding symbol. The more frequently appearing symbols are assigned fewer bits to optimize the transmission of information.
Huffman codes are conventionally decoded by Huffman decoding schemes such as bit-serial search and table mapping. The bit-serial search scheme processes compressed bit data serially. It requires constructing a binary tree that decodes the compressed data bit-by-bit and takes a long time to decode. Table mapping involves matching compressed bit data to predefined Huffman codes and associated symbols stored in table form. Such techniques generally require a very large storage or table size because of duplicated symbols and extra code length bits.